#include <iostream>
#include <string>
#include <vector>
#include <algorithm>

bool isCyrillicUpper(char c) {
    return (c >= 1040 && c <= 1071); // Cyrillic uppercase range in ASCII
}

bool containsLatinChar(const std::string& word) {
    return std::any_of(word.begin(), word.end(), [](char c) {
        return (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z');
    });
}

int main() {
    std::string input_str;
    std::cout << "Введите несколько слов, разделенных пробелом: ";
    std::getline(std::cin, input_str);

    if (input_str.empty()) {
        std::cout << "Мало данных для анализа" << std::endl;
        return 0;
    }

    std::vector<std::string> words;
    std::string word;
    for (char c : input_str) {
        if (c == ' ') {
            words.push_back(word);
            word = "";
        } else {
            word += c;
        }
    }
    words.push_back(word); // Add the last word

    if (words.size() <= 1) {
        std::cout << "Мало данных для анализа" << std::endl;
        return 0;
    }

    int count_words = words.size();
    int count_capital_cyrillic = 0;
    int count_latin_char = 0;
    int count_short_words = 0;
    std::string max_word = "";
    int max_word_length = 0;
    int count_hyphen = 0;

    for (const std::string& w : words) {
        if (isCyrillicUpper(w[0])) {
            count_capital_cyrillic++;
        }
        if (containsLatinChar(w)) {
            count_latin_char++;
        }
        if (w.length() <= 3) {
            count_short_words++;
        }
        if (w.length() > max_word_length) {
            max_word = w;
            max_word_length = w.length();
        }
        if (w.find('-') != std::string::npos) {
            count_hyphen++;
        }
    }

    std::cout << "Количество слов: " << count_words << std::endl;
    std::cout << "Количество слов, начинающихся с заглавной кириллической буквы: " << count_capital_cyrillic << std::endl;
    std::cout << "Количество слов, содержащих латинские символы: " << count_latin_char << std::endl;
    std::cout << "Количество слов длиной не более 3 символов: " << count_short_words << std::endl;
    std::cout << "Самое длинное слово: " << max_word << ", длина: " << max_word_length << std::endl;
    std::cout << "Количество слов с символом дефиса '-': " << count_hyphen << std::endl;

    return 0;
}